package com.czk.scala.chapter02

/**
 * @Author:ChenZhangKun
 * @Date: 2021/12/7 11:30
 */
object Test06_DataTypeConversion {
  def main(args: Array[String]): Unit = {
    val a1: Byte=10
    val b1: Long=235L
    // 隐士转为高精度类型的Long
    val result: Long=a1+b1
    println(result)
    // 直接强转
    val result1: Int=a1+b1.toInt
    println(result1)

    val a3: Byte=10
    val c3: Char='c'
    println(a3+c3.toInt)

    // 强制类型转换
    val n1: Int=2.5.toInt
    // 直接取整，有精度损失
    println(n1)
    val n2: Int= -2.9.toInt
    // -2 直接取整
    println(n2)

    val n3: Int=(2.6+3.7).toInt
    // 6
    println(n3)

    val n4:Int=2.6.toInt+3.7.toInt
    // 5
    println(n4)

    // 数值类型和string类型的转换
    // 数值转string
    val n: Int=27
    val s: String=n+""
    println(s)

    // string转数值
    val m: Int="12".toInt
    println(m)

    val f: Float="12.3".toFloat
    println(f)
  }
}
